using UniversalAdmin.Domain.Entities;

namespace UniversalAdmin.Domain.Repositories;

public interface IMenuRepository : IRepository<Menu>
{
    Task<bool> HasChildrenAsync(Guid id);
    Task<IEnumerable<Menu>> GetByIdsAsync(IEnumerable<Guid> ids);
}

public interface IMenuRoleRepository : IRepository<MenuRole>
{
    Task<IEnumerable<Guid>> GetMenuIdsByRoleAsync(Guid roleId);
    Task DeleteByRoleAsync(Guid roleId);
    new Task AddRangeAsync(IEnumerable<MenuRole> menuRoles);
}